package pe.gob.osce.sirenas.svc;

import java.util.List;

import javax.ejb.Local;

import pe.gob.osce.sirenas.model.AuditoriaDTO;
import pe.gob.osce.sirenas.model.BusquedaFichaDTO;
import pe.gob.osce.sirenas.model.BusquedaFiscalizacionDTO;
import pe.gob.osce.sirenas.model.FichaArbitralDTO;
import pe.gob.osce.sirenas.model.FiscalizaEntidadDTO;
import pe.gob.osce.sirenas.model.FiscalizacionDTO;
import pe.gob.osce.sirenas.model.IncidenciasDTO;
import pe.gob.osce.sirenas.model.ReestablecerDTO;
import pe.gob.osce.sirenas.model.jpa.Incidencias;

@Local
public interface RegistrarFiscalizacionServiceLocal {

	public void generarFiscalizacion(List<BusquedaFiscalizacionDTO> listaFichasSeleccionadas,AuditoriaDTO auditoriaDTO)throws Exception;
	

	public	List<BusquedaFiscalizacionDTO> obtenerBusquedaFiscalizacion(BusquedaFiscalizacionDTO busquedaFiscalizacionDTO) throws Exception ;
	public	List<BusquedaFichaDTO> obtenerBusquedaFiscalizacionPersonalizada(BusquedaFichaDTO obtenerFichaArbitral) throws Exception;

	public	List<BusquedaFichaDTO> obtenerBusquedaFiscalizacionAleatoria(BusquedaFiscalizacionDTO busquedaFicha) throws Exception;

	public void registrarInicioFiscalizacion(FiscalizacionDTO fiscalizacionDTO,AuditoriaDTO auditoriaDTO)throws Exception;
	public	FiscalizaEntidadDTO obtieneFiscalizacionDocencia(FiscalizaEntidadDTO fiscalizaEntidadDTO) throws Exception;
	public	void registraFiscalizacionDocencia(FiscalizaEntidadDTO fiscalizaEntidadDTO,AuditoriaDTO auditoriaDTO) throws Exception ;
	public	FiscalizaEntidadDTO obtieneFiscalizaEspecialidad(FiscalizaEntidadDTO fiscalizaEntidadDTO) throws Exception ;
	public	void registraFiscalizaEspecialidad(FiscalizaEntidadDTO fiscalizaEntidadDTO,AuditoriaDTO auditoriaDTO) throws Exception;
	public	FiscalizaEntidadDTO obtieneFiscalizaExpLaboral(FiscalizaEntidadDTO fiscalizaEntidadDTO) throws Exception ;
	public	void registraFiscalizaExpLaboral(FiscalizaEntidadDTO fiscalizaEntidadDTO,AuditoriaDTO auditoriaDTO) throws Exception;
	public	FiscalizaEntidadDTO obtieneFiscalizaFormacion(FiscalizaEntidadDTO fiscalizaEntidadDTO) throws Exception ;
	public	void registraFiscalizaFormacion(FiscalizaEntidadDTO fiscalizaEntidadDTO,AuditoriaDTO auditoriaDTO) throws Exception;
	public	FiscalizaEntidadDTO obtieneFiscalizaTrayecArbitral(FiscalizaEntidadDTO fiscalizaEntidadDTO) throws Exception  ;
	public	void registraFiscalizaTrayecArbitral(FiscalizaEntidadDTO fiscalizaEntidadDTO,AuditoriaDTO auditoriaDTO) throws Exception;
	

	public Object[]  obtenerDetalleHistoricoFiscalizacion(FiscalizacionDTO fiscalizacionDTO)throws Exception;
	public List<FiscalizacionDTO>  obtenerHistoricoFiscalizacion(FiscalizacionDTO fiscalizacionDTO)throws Exception;
	public void registrarInformeFiscalizacion(FiscalizacionDTO fiscalizacionDTO,AuditoriaDTO auditoriaDTO)throws Exception;
}